import { ArcoCalendarLang, ArcoLang } from '../interface';

const calendarLang: ArcoCalendarLang = {
  formatYear: 'YYYY',
  formatMonth: 'MM-YYYY',
  today: 'Vandaag',
  view: {
    month: 'Maand',
    year: 'Jaar',
    week: 'Week',
    day: 'Dag',
  },
  month: {
    long: {
      January: 'januari',
      February: 'februari',
      March: 'maart',
      April: 'april',
      May: 'mei',
      June: 'juni',
      July: 'juli',
      August: 'augustus',
      September: 'september',
      October: 'oktober',
      November: 'november',
      December: 'december',
    },
    short: {
      January: 'jan',
      February: 'feb',
      March: 'mrt',
      April: 'apr',
      May: 'mei',
      June: 'jun',
      July: 'jul',
      August: 'aug',
      September: 'sep',
      October: 'okt',
      November: 'nov',
      December: 'dec',
    },
  },
  week: {
    long: {
      self: 'Week',
      monday: 'maandag',
      tuesday: 'dinsdag',
      wednesday: 'woensdag',
      thursday: 'donderdag',
      friday: 'vrijdag',
      saturday: 'zaterdag',
      sunday: 'zondag',
    },
    short: {
      self: 'Week',
      monday: 'ma',
      tuesday: 'di',
      wednesday: 'woe',
      thursday: 'do',
      friday: 'vr',
      saturday: 'za',
      sunday: 'zo',
    },
  },
};

const lang: ArcoLang = {
  locale: 'nl-NL',
  empty: {
    description: 'Geen gegevens',
  },
  drawer: {
    okText: 'OK',
    cancelText: 'Annuleren',
  },
  popconfirm: {
    okText: 'OK',
    cancelText: 'Annuleren',
  },
  modal: {
    okText: 'OK',
    cancelText: 'Annuleren',
  },
  pagination: {
    goto: 'Ga naar',
    page: 'pagina',
    countPerPage: '/ pagina',
    total: 'Totaal: {0}',
  },
  table: {
    okText: 'OK',
    resetText: 'Resetten',
  },
  upload: {
    start: 'Start',
    cancel: 'Annuleren',
    delete: 'Verwijderen',
    retry: 'Opnieuw proberen',
    buttonText: 'Klik om te uploaden',
    preview: 'Voorbeeld',
    drag: 'Sleep bestanden naar hier om te uploaden',
    dragHover: 'Laat los om te uploaden',
    error: 'Upload mislukt',
  },
  calendar: calendarLang,
  datePicker: {
    view: calendarLang.view,
    month: calendarLang.month,
    week: calendarLang.week,
    placeholder: {
      date: 'Selecteer datum',
      week: 'Selecteer week',
      month: 'Selecteer maand',
      year: 'Selecteer jaar',
      quarter: 'Selecteer kwartaal',
      time: 'Selecteer tijd',
    },
    rangePlaceholder: {
      date: ['Startdatum', 'Einddatum'],
      week: ['Startweek', 'Eindweek'],
      month: ['Startmaand', 'Eindmaand'],
      year: ['Startjaar', 'Eindjaar'],
      quarter: ['Startkwartaal', 'Eindkwartaal'],
      time: ['Starttijd', 'Eindtijd'],
    },
    selectTime: 'Selecteer tijd',
    today: 'Vandaag',
    now: 'Nu',
    ok: 'OK',
  },
  image: {
    loading: 'Laden',
  },
  imagePreview: {
    fullScreen: 'Volledig scherm',
    rotateRight: 'Draai rechtsom',
    rotateLeft: 'Draai linksom',
    zoomIn: 'Inzoomen',
    zoomOut: 'Uitzoomen',
    originalSize: 'Originele grootte',
  },
  typography: {
    copied: 'Gekopieerd',
    copy: 'Kopiëren',
    expand: 'Uitklappen',
    collapse: 'Inklappen',
    edit: 'Bewerken',
  },
  form: {
    validateMessages: {
      required: '#{field} is verplicht',
      type: {
        string: '#{field} is geen geldige tekst',
        number: '#{field} is geen geldig nummer',
        boolean: '#{field} is geen geldige boolean',
        array: '#{field} is geen geldige array',
        object: '#{field} is geen geldig object',
        url: '#{field} is geen geldige URL',
        email: '#{field} is geen geldig e-mailadres',
        ip: '#{field} is geen geldig IP-adres',
      },
      number: {
        min: '#{value} is kleiner dan minimum #{min}',
        max: '#{value} is groter dan maximum #{max}',
        equal: '#{value} is niet gelijk aan #{equal}',
        range: '#{value} valt niet binnen #{min} ~ #{max}',
        positive: '#{value} is geen positief getal',
        negative: '#{value} is geen negatief getal',
      },
      array: {
        length: '#{field} heeft niet #{length} items',
        minLength: '#{field} heeft minimaal #{minLength} items nodig',
        maxLength: '#{field} heeft maximaal #{maxLength} items',
        includes: '#{field} bevat niet #{includes}',
        deepEqual: '#{field} is niet gelijk aan #{deepEqual}',
        empty: '#{field} is geen lege array',
      },
      string: {
        minLength: 'Minimaal #{minLength} tekens',
        maxLength: 'Maximaal #{maxLength} tekens',
        length: 'Moet #{length} tekens bevatten',
        match: '#{value} voldoet niet aan patroon #{pattern}',
        uppercase: '#{value} moet volledig hoofdletters zijn',
        lowercase: '#{value} moet volledig kleine letters zijn',
      },
      object: {
        deepEqual: '#{field} is niet gelijk aan verwachte waarde',
        hasKeys: '#{field} mist verplichte velden',
        empty: '#{field} is geen object',
      },
      boolean: {
        true: 'Moet true zijn',
        false: 'Moet false zijn',
      },
    },
  },
  colorPicker: {
    history: 'Recent gebruikte kleuren',
    preset: 'Systeem kleuren',
    empty: 'Geen',
  },
};

export default lang;
